<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<!--父组件-->
<div id="app">
  <lk-box></lk-box>
  <lk-box>
    <!--父组件调用子组件插槽标签中使用template标签 并附带属性 `v-slot:default="slotProps"` 接收数据,`slotProps.data` 就是我们的nameArr数据-->
    <template v-slot:default="slotProps">
      <span>{{slotProps.data.join('---')}}</span>
    </template>
  </lk-box>
</div>

<!--子组件-->
<template id="box">
  <div>
    <!-- 使用 :data="nameArr" ,动态绑定子组件的 nameArr -->
    <slot :data="nameArr">
      <ul>
        <li v-for="name in nameArr">{{name}}</li>
      </ul>
    </slot>
  </div>
</template>



<script src="../js/vue.js"></script>
<script>

  // 注册子组件
  const LKBox = {
    data(){
      return {
        nameArr: ['张三','李四','王五','赵六']
      }
    },
    template: "#box"
  }

  // 父组件
  const app = Vue.createApp({
    data(){
      return {
        isShow: true
      }
    },
    components: {
      // 挂载子组件
      'lk-box': LKBox
    },
  });
  // 挂载vue实例
  app.mount('#app');
</script>
</body>
</html>